package com.xgimi.open.skill.datamanager.domain.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xgimi.open.skill.datamanager.domain.entity.SlotDO;

import java.util.List;

/**
 * @author coderzpw.zhang
 * @description 针对表【slot(槽位表)】的数据库操作Service
 * @createDate 2023-02-07 19:23:48
 */
public interface SlotService extends IService<SlotDO> {

    List<SlotDO> querySlotByNameAndVid(SlotDO slotDO);

    IPage<SlotDO> pageQuery(IPage<SlotDO> page, SlotDO slotDO);

    SlotDO queryById(Long id);

    List<SlotDO> queryByNameByVidAndNoId(SlotDO slotDO);

    List<SlotDO> listBySkillVid(Long skillVid);

    boolean updateByIdAndVersion(SlotDO slotDO);

    List<SlotDO> listBySlotNames(List<String> slotNames, Long skillVid);

    boolean removeBySkillVids(List<Long> skillVids);

    List<SlotDO> queryByRelyonWordStock(Long id);

    /**
     * 物理删除
     *
     * @param skillVid
     * @return
     */
    Boolean physicalDeleteBySkillVid(Long skillVid);
}
